import { DeliverySchemeComponent } from './pages/initialization/deliveryScheme/deliveryScheme.component';
import { NoContentComponent } from './pages/no-content/no-content.component';
import { InitializationService } from './pages/initialization/index';
import { Routes } from '@angular/router';
import { BaseAppComponent } from './app.component';
import { ShellIntegrationService } from './services/shellIntegration';
import { FinishedPageService } from './pages/finished/index';
import { EmployeeSetupPageService } from './pages/employeeSetup/index';
import { DeliverySchemeSetupPageService } from './pages/deliverySchemeSetup/index';
import { SetupPageService } from './pages/setup/index';
import { HomePageService } from './pages/home/index';

InitializationService.current.registerChildrenRoute({ path: "deliveryScheme", name: 'deliveryScheme', url: "initialization/deliveryScheme", component: DeliverySchemeComponent })

export const appModuleDeclarations = [
    BaseAppComponent,
    ...HomePageService.current.forRoot(),
    ...SetupPageService.current.forRoot(),
    ...DeliverySchemeSetupPageService.current.forRoot(),
    ...EmployeeSetupPageService.current.forRoot(),
    ...FinishedPageService.current.forRoot(),
    ...InitializationService.current.forRoot(),
]

export const appModuleProviders = [
    ShellIntegrationService
]

export const ROUTES: Routes = [
    HomePageService.current.route,
    FinishedPageService.current.route,
    InitializationService.current.route,
    SetupPageService.current.route,
    DeliverySchemeSetupPageService.current.route,
    EmployeeSetupPageService.current.route,
    { path: '**', component: NoContentComponent },
];
